|
|
|
| Доброго времени суток
открываю форму frmpipeinfo2 в невидимом режиме с фильтром отбирающим одну запись
необходимо удалить текущую запись запись в этой форме
как только перемещаю фокус в форму (что бы удалить текущую запись) - форма отображается
вот код
Forms!frmpipeinfo2.SetFocus 'вот тут форма выходит из сумрака
Forms!frmpipeinfo2.DrNo.SetFocus
DoCmd.SetWarnings False
DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70
DoCmd.DoMenuItem acFormBar, acEditMenu, 6, , acMenuVer70
DoCmd.SetWarnings True
DoCmd.Close acForm, "frmpipeinfo2"
|
почему так? - да как-то проще оказалось, чем запускать запросы на удаление (много подформ и у некоторых подформ первого уровня связь не с основной формой а с записью другой подформы первого уровня)
Цель что бы форма оставалась в невидимом режиме (без мельканий на экране)
Заранее спасибо | |
|
| |
|
|
|
| Использовать Property формы.
Public Property Get DELETERECORD() As Variant
End Property
Public Property Let DELETERECORD(ByVal vNewValue As Variant)
'Делаем что надо
MsgBox "!"
End Property
Вызов:Forms!Frm1.DELETERECORD = True | |
|
| |
|
|
|
| Спасибо
работает
пойду про Property читать | |
|
| |
|
|
|
| snipe, вы меня удивили...
Во первых, эта задача решается одной строкой:
Forms!frmpipeinfo2.Recordset.Dalete
Во вторых, если нужно удалить запись, то зачем вообще открывать форму?
Поще это сделать запросом на удаление. Вы же условие отбора знаете.
В третьих конструкции типа DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70 - анахронизм еще из Акса95, который до сих пор предлагают мастера. Уже в Акс97 появилась более красивая конструкция: RunCommand Константа | |
|
| |
|
|
|
| 3. да как-то ранее наработал DoCmd.DoMenuItem и не задавался вопросом что может быть лучше
2. запросом можно но форма сложная и надо удалять значения из всех подформ, а на форме есть кнопочка которая удаляет все записи из подформ - посему появилась идея использовать эту кнопочку (все это ранее в коде отрабатывает) а вот удаление записи основной формы не хотело нормально работать
1. не знал
вообщем пора за парту | |
|
| |
|
|
|
|
надо удалять значения из всех подформ, а на форме есть кнопочка которая удаляет все записи из подформ
| Тогда сделайте процедуру "кнопочка_Click" - Public и, открыв форму, выполните код:
Forms!frmpipeinfo2.кнопочка_Click
ЗЫ. А каскадное удаление вам не подходит?
ЗЗЫ. И где вы в своем коде используете кнопочку? | |
|
| |
|
|
|
| ЗЗЫ раньше того что показал
(так и использую Forms!frmpipeinfo2.кнопочка_Click)
ЗЫ каскадное - не подходит
некоторые Запросы (recordsource ) подформ через union all сделаны и удаление записей едет через другие запросы
кнопочка работает только на удаление записей из подчиненных форм
вообщем наворотил | |
|
| |