|
|
|
| Как можно сделать та чтобы не входя в конструктор формы изменять параметр запрета/разрешения добавления, изменения, удаления записей формы.
Например находясь в форме изменяя значение переключателя истина на ложь изменять параметр запрета/разрешения добавления, изменения, удаления записей этой же формы
Заранее благодарен | |
|
| |
|
|
|
| у формы есть свойства
AllowEdits
AllowAdditions
AllowDeletions
изменяйте их в VBA | |
|
| |
|
|
|
| Если можно какой-нибудь пример как это написать. Если я правильно понимаю процедура должна начинаться и заканчиваться так:
Private Sub Form_Load()
End Sub | |
|
| |
|
|
|
| Ну на Form_Load как-то смысла маловато...
а на нажатие кнопки например можно так
Private Sub Кнопка_Click()
Me.AllowAdditions = True
Me.AllowEdits = True
End Sub | |
|
| |
|
|
|
| Большое спасибо смысл понятен
Буду пробовать чтобы действовало с другими событиями | |
|
| |
|
|
|
| Добрый вечер.
Появились небольшие осложнения:
1. Можно ли добиться того чтобы запуская процедуру из главной формы устанавливался или отменялся запрет на изменение записей в подчиненной форме (в макросе - задать значение - элемент-[Forms]![abc].[AllowEdits]; выражение-False). У меня при запуске выскакивает сообщение что указанный в процедуре объект не является объектом OLE
Может нужно по другому указать имя подчиненной формы ???
2. Данная процедура почему то действует только в главной форме и не действует даже если ее запускать в подчиненной форме для запрета на изменение записей подчиненной формы
3. При установке запрета на изменение записей в главной форме блокируется также поле со списком которое используется для поиска записей главной формы (простая форма). Можно ли сделать так чтобы это поле со списком не блокировалось ???
С уважением ПАСАТ | |
|
| |
|
|
|
| 1. http://hiprog.com/index.php?option=com_content&task=blogcategory&id=119&Itemid=159
Q15
2. см вопрос 1.
3. Нет Если Вы устанавливаете запрет на форму, то он действует на все эелементы формы.
Для запрета редактирования только тех полей которые имеют источники данных установите свойство формы RecordsetType = 2 | |
|
| |
|
|
|
| Спасибо за пищу для размышлений | |
|
| |
|
|
|
| Еще раз спасибо за поленый совет с первыми двумя вопросами я разобрался.
Вопрос номер 3
Ввел
Private Sub Кнопка_Click()
Me.RecordsetType = 2
End Sub
Имеется две проблемы
1. не могу добавить новою запись.
2 .не могу отменить запрет на именение записию.
Может проще например нажатием кнопки установливать или отменять блокировку для каждого поля отдельно.
Если нельзя избежать выше описанных проблем буду благодарен за пример связанный с установкой/отменой блокировки поля.
Заранее благодарен. | |
|
| |
|
13 Кб. |
|
| Так достаточно, или что-то еще нужно? см.файл | |
|
| |
|
|
|
| Большое спасибо за хороший пример
Остался небольшой вопрос так для общего развития:
1. В Me.RecordsetType значение переменной может быть равно только 0 или 2. Или можно использовать другие значения. Если можно то в двух словах об использовании других значений
С уважением ПАСАТ | |
|
| |
|
|
|
| Из Help:
Свойство Тип набора записей (RecordsetType) может иметь следующие значения.
Динамический набор (Значение по умолчанию). 0 - Допускается изменение
присоединенных элементов управления в единственной таблице или в нескольких таблицах
со связями типа «один-к-одному». Не допускается изменение данных для элементов
правления присоединенных к полям таблиц со связями типа «один-ко-многим» со
cтороны «один», если не разрешено каскадное изменение между таблицами.
Дополнительные сведения см. в разделе, посвященном возможности изменения записей с
помощью запроса.
Динамический набор (Несогл.) - 1 - Допускается редактирование всех таблиц и
элементов управления, присоединенных к их полям .
Статический набор - 2 - Не допускаются изменения данных в таблицах и в
присоединенных к их полям элементах управления.
|
Тоже из Help, но своими слованими:
в ADP есть еще 3 и 4
Snapshot и Updatable Snapshot соответсвенно | |
|
| |
|
|
|
| Спасибо | |
|
| |