Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / О формах ввода....... / 25 сообщений из 40, страница 1 из 2
21.05.2003, 09:05
    #32164578
pv
pv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
Имеется форма ввода, можно ли как нибудь ограничить ввод до одной записи, т.е. чтобы пользователь мог внести не более одной записи?????
...
Рейтинг: 0 / 0
21.05.2003, 09:48
    #32164629
Витал
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
Убрать кнопки перехода.
...
Рейтинг: 0 / 0
21.05.2003, 09:51
    #32164639
AlTis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
Cоздаёшь глобальную переменную в модуле формы.
На событие "После вставки" накапливаешь кол-во добавляемых записей в созданную переменную.
На событие "До вставки" проверяешь значение переменной и далее идут твои действия...
...
Рейтинг: 0 / 0
21.05.2003, 10:02
    #32164660
pv
pv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
2 Витал:
Отсутствие кнопок перехода - не значит отсутствие возможности ввода.
...
Рейтинг: 0 / 0
21.05.2003, 10:04
    #32164662
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
Просто убрать кнопки перехода нельзя - остается прокрутка колесиком, например.
Если тебе нужна форма, вообще с одной записью ( а не с возможностью добавлять по одной записи), то легче на событие ТекущаяЗапись повесить проверку на кол-во записей, если записей нет - то разрешить ввод, если есть - то только редактирование. Так же поможет событие Form_BeforeInsert (ДоВставки) - делаешь проверку на кол-во записей и или отменяешь ввод либо разрешаешь. Способов много. Если это был бы adp-проект, было бы еще проще (триггер)
...
Рейтинг: 0 / 0
21.05.2003, 10:17
    #32164688
pv
pv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
Проект ADP, да вообщето с 2000 Аксеса и в mdp проектах появились тригеры.
Но дело в том что эта форма вносит данные в таблицу в которой уже есть записи, но из одних форм можно вносить сколь угодное количество записей, а из этой формы только одну, плюс возможность ее редактирования.
...
Рейтинг: 0 / 0
21.05.2003, 10:39
    #32164716
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
Вариант: добавить пустую запись программно, а в форме разрешить только редактирование, но не добавление.
...
Рейтинг: 0 / 0
21.05.2003, 10:50
    #32164730
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
2pv
> да вообщето с 2000 Аксеса и в mdp проектах появились тригеры.

Ты ошибаешься, путая скудные возможности наложения ораничений на столбец в mdb с триггерами в MS SQL.
...
Рейтинг: 0 / 0
21.05.2003, 10:54
    #32164741
Bor-L
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
при социализме обходилось повторным заниманием очереди.
Что будете делать, если форму откроют второй раз ?
...
Рейтинг: 0 / 0
21.05.2003, 11:06
    #32164765
incold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
Так речь идет о форме ввода или о таблице?
Где нужно поставить ограничение?
Пользователь не может в таблицу добавить более одной записи, или в форме за один сеанс не более одной записи?
...
Рейтинг: 0 / 0
21.05.2003, 11:16
    #32164784
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
Догадываюсь, что это таблица с реквизитами предприятия (или типа того). В самом простом случае - это всегда одна запись. Тогда лучше сделать несвязанную форму с которой и работать.
...
Рейтинг: 0 / 0
21.05.2003, 11:46
    #32164833
pv
pv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
2 All:
форма предназначена для следующего:
Есть основная форма, которая служит для отображения забронированного товара( связанна с таблицей броней), есть возможность отгрузки какого-то заброннированного товара, вот при выборе отпустить с брони появляется модальный диалог, который предназначен для ввода количества отпускаемого товара, причем сразу в таблицу выдач товаров, только часть полей автоматически заполняются с формы бороней для отпускаемого товара, нужно, чтобы человек если введет отпуск с брони, то эту запись можно было только редактировать, а при закрытие формы автоматически уменьшается количество товара на брони, и следовательно последующее открытие формы отпуска товара с брони вполне возможна, например, в случае если сразу выбрали не весь забронированный товар.

2 incold:
За один сеанс в форму ввода не более одной записи.
...
Рейтинг: 0 / 0
21.05.2003, 11:55
    #32164852
assa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
А если добавлять враз по 1. записи, чем плохо убрать прокрутки? (С addOnly)? Что-то я не придумаю...

Но если плохо - добавь свойство, меняй при открытии, а в onCurrent проверяй, - это, имхо, покрывает все возможные вызовы без закрытия.

ЗЫ: если "самый простой случай" -таблица с одной записью, для Microsoft Jet проще уникального индекса с единственным возможным значением (CONSTRAINT + UNIQUE + ValidationRule) ничего нет...
...
Рейтинг: 0 / 0
21.05.2003, 12:03
    #32164864
incold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
ИМХО, в данном случае лучше делать несвязанную форму и заполнять и контролировать все ручками.
...
Рейтинг: 0 / 0
21.05.2003, 12:08
    #32164873
assa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
2incold ага ...и изобретать маски ввода и прочие барьеры для кривых ручек для всех контролов :)
(когда-то в букварях это делали временными табличками, чтобы не иметь гемора с правилами в несвязанных полях, отличными от правил в таблице)
...
Рейтинг: 0 / 0
21.05.2003, 12:09
    #32164877
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
А мой пост от 10:39 чем плох?
...
Рейтинг: 0 / 0
21.05.2003, 12:11
    #32164880
pv
pv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
2 incold:
Все хотел узнать, что это за ИМХО?
Я думал о не связной форме, но хочется же найти решение проще.
...
Рейтинг: 0 / 0
21.05.2003, 12:24
    #32164901
pv
pv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
2 Владимир Саныч:
O посте в 10:39.
Пользователь же может передумать вносить данные и тогда ее потом и удалать?
Форма для ввода открывается всегда пустой, не смотря на то, что даже записи в таблице, с которой она связана, есть.
Скорее всего придется прибегнуть к несвязной форме.
...
Рейтинг: 0 / 0
21.05.2003, 12:30
    #32164908
incold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
ИМХО\r
/topic/29727\r
\r
У меня есть подобные задачи (правда ADP+SQL) так я их делаю на несвязанных формах и передаю параметры в серверные процедуры. \r
Пока что лучше/проще/надежнее не нашел варианта.
...
Рейтинг: 0 / 0
21.05.2003, 12:31
    #32164911
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
2 pv:

Ну и пусть открывается пустой. Можно сделать кнопку Add, которая добавит запись и сама скроется.
...
Рейтинг: 0 / 0
21.05.2003, 12:32
    #32164913
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
Лучше в твоем случае последовать совету assa и установить уникальный составной индекс на поля. Открывать форму всегда для редактирования, без NavigationBar, отслеживать ошибки при попытке ввести 2-ую запись (нарушение уникальности ключа) лучше самостоятельно (Form_Error) либо как я уже писал, остлеживать на событие ДоВставки кол-во записей.
...
Рейтинг: 0 / 0
21.05.2003, 12:42
    #32164937
Витал
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
Что-й то я не въеду, господа! Разъясните тупому!! Если RecordSource модальной формы - одна-единственная запись выбранная Select'ом, где ID> максимального значения (т.е. новая запись), то о переходах на какие другие записи в этой форме идет речь?
...
Рейтинг: 0 / 0
21.05.2003, 12:43
    #32164941
pv
pv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
2 incold - проект ADP + SQL Server.

Может идею AlTis развить?
Что если ключ - количество записей.
---------------
После вставки ключ++
Если ключ >0 me!AllowAdditions = False
-----------------
удалени/после подтверждения del(еще не разобрался) ключ--
Если ключ <1 me!AllowAdditions = True
...
Рейтинг: 0 / 0
21.05.2003, 12:47
    #32164951
pv
pv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
2 Витал:
рекордсоурс формы - не результат запроса с одной записью, а таблица, но т.к. таблица в свойствах обозначена как для "ввода данных", то при открытие она вообще не содержит строк, не смотря на то что сам источник данных их может содержать.
...
Рейтинг: 0 / 0
21.05.2003, 12:52
    #32164963
Витал
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
О формах ввода.......
А что мешает вместо таблицы использовать запрос? Который к тому же будет формироваться вместе с открытием формы (по кнопке открытия формы или другому)?
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / О формах ввода....... / 25 сообщений из 40, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]