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

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

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

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

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

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

Может идею AlTis развить?
Что если ключ - количество записей.
---------------
После вставки ключ++
Если ключ >0 me!AllowAdditions = False
-----------------
удалени/после подтверждения del(еще не разобрался) ключ--
Если ключ <1 me!AllowAdditions = True
...
Рейтинг: 0 / 0
О формах ввода.......
    #32164951
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Витал:
рекордсоурс формы - не результат запроса с одной записью, а таблица, но т.к. таблица в свойствах обозначена как для "ввода данных", то при открытие она вообще не содержит строк, не смотря на то что сам источник данных их может содержать.
...
Рейтинг: 0 / 0
О формах ввода.......
    #32164963
Витал
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что мешает вместо таблицы использовать запрос? Который к тому же будет формироваться вместе с открытием формы (по кнопке открытия формы или другому)?
...
Рейтинг: 0 / 0
О формах ввода.......
    #32164975
Витал
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Или примерно так:
Код: plaintext
Select * From Tabl Where Id> (Select Max(Id) From Tabl)
...
Рейтинг: 0 / 0
О формах ввода.......
    #32164986
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Витал:
На момент открытия формы записи не существует, а если использовать запрос то она должна уже быть.
...
Рейтинг: 0 / 0
О формах ввода.......
    #32164995
incold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 incold - проект ADP + SQL Server.
Может идею AlTis развить?
Что если ключ - количество записей.


Зачем? При работе ADP + SQL Server - одно из важных требований уменьшение траффика между клиентом и сервером.
Зачем мне открывать форму с источником и тянуть с сервера записи, если я собираюсь только добавить новую запись?
Так как я предлагал - при открытии формы никакого траффика вообще нет, при закрытии или нажатии на кнопку выполнить операцию - на сервер передается только вызов процедуры с параметрами, все остальное делает сервер.
Зачем громоздить какие-то ключи дополнительные и т.п.?

Если речь идет о простом решении проблемы, которая была в начале, то именно так и нужно делать...имхо :)

2 ALL
Народ, вот все тут постепенно собираются переходить на ADP + SQL Server.
Подумайте, сколько вам придется переделывать при таких подходах к реализации такой задачи....
...
Рейтинг: 0 / 0
О формах ввода.......
    #32165004
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 incold
не думаю, что открытие формы в режиме ввод данных влечет за собой пересылку всей таблицы, я не прав?
...
Рейтинг: 0 / 0
О формах ввода.......
    #32165008
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 incold
не думаю, что открытие формы в режиме ввод данных влечет за собой пересылку всей таблицы, я не прав?
...
Рейтинг: 0 / 0
О формах ввода.......
    #32165025
Витал
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На событие после обновления - Me.AllowAdditions = False
...
Рейтинг: 0 / 0
О формах ввода.......
    #32165040
incold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не думаю, что открытие формы в режиме ввод данных влечет за собой пересылку всей таблицы, я не прав?

Какая разница влечет или не влечет.
Дело в подходе.
Есть простая задача: добавить по данным введенным пользователем одну и только одну запись. Начинаются всякие навороты, тут включить, тут выключить. А потом через месяц меняется алгоритм обработки (например на определенных клиентов ставится квота, или еще что-нибудь). И опять программист лезет править клиентскую часть и обновлять новую версию и юзеров.
при серверной процедуре все намного проще.
...
Рейтинг: 0 / 0
О формах ввода.......
    #32165044
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Заработало
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Может идею AlTis развить? 
Что если ключ - количество записей. 
 --------------- 
 
После вставки ключ++ 
Если ключ > 0  me!AllowAdditions = False 
 ----------------- 
 
после подтверждения del(еще не разобрался) ключ -- 
 
Если ключ < 1  me!AllowAdditions = True
...
Рейтинг: 0 / 0
О формах ввода.......
    #32165067
Huk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Huk
Гость
Вообще-то у формы есть свойство: Цикл табуляции.
Устанавливаешь "Текущая запись" и до выхода из формы больше запись добавить нельзя.
...
Рейтинг: 0 / 0
О формах ввода.......
    #32165070
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
2 Huk:

По-моему, для этого надо ампутировать мышку.
...
Рейтинг: 0 / 0
О формах ввода.......
    #32165083
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По-моему, для этого надо ампутировать мышку.
по самые плечи
...
Рейтинг: 0 / 0
О формах ввода.......
    #32165093
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот и не знаю что поможет:
На ввод данных в таблицу срабатывает тригер, которай может запретить изменение в запись, так вот если изменение не может произойти(происходит откат), то это отображается на форме при переходе на другую запись, а т.к. запись она, то это не отображается, подскажите, как отобразить это, т.е. обновлять контролы, после изменений.
...
Рейтинг: 0 / 0
О формах ввода.......
    #32165122
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты сам то понял что написал???
...
Рейтинг: 0 / 0
О формах ввода.......
    #32165135
pv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Перефразирую:
На обновление записи в таблице срабатывает тригер, который может запретить изменение в записи, так вот если изменение не может произойти(происходит откат), то это отображается на форме при переходе на другую запись, а т.к. запись одна, то перехода на другую запись не происходит, а следовательно наш откат, т.е. возврат к старому значению поля не отображается на форме, requery поставить не получается, т.к. форма для ввода а следовательно при requery форма визуально будет очищаться.
Как решить эту проблему?
...
Рейтинг: 0 / 0
О формах ввода.......
    #32165152
incold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я вот за собой тоже замечал такую черту, если делаешь что-то, а кто-то говорит "так не оптимально, лучше по-другому", то все равно продолжаешь делать, чтобы потом продемонстрировать "я все-таки сделал ЭТО".

Правда я так и не понял на чем база на SQL или Access.
Но если будет желание обсудить как оптимальнее сделать на SQL, могу сказать, если желания нет......каждому свое
...
Рейтинг: 0 / 0
40 сообщений из 40, показаны все 2 страниц
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / О формах ввода.......
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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