powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Падает подчиненная форма при удалении записи из главной
4 сообщений из 4, страница 1 из 1
Падает подчиненная форма при удалении записи из главной
    #39219480
Eugene_p1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Коллеги, добрый день.

Выручайте, замучался уже искать проблему.

Есть форма fBudgetCategories. У неё нет источника данных. В ней две подчиненные формы: в [sfBudgetCategories] основная таблица (#1), в другой [sfBCats_CCentres] -- подчиненная (#2).
В запросе таблицы #1 ничего особенного нет - тупо берет таблицу целиком.
Запрос #2:
Код: sql
1.
2.
3.
SELECT Cats.BudgetCategory, Cats.CostCentre, Cats.FSI, CCtrs.CostCentreName, CCtrs.CostCentreGroup
FROM CCtrs INNER JOIN Cats ON CCtrs.CostCentre = Cats.CostCentre
WHERE (Cats.BudgetCategory=[Формы]![Budget Categories]![sfBudgetCategories].[Form]![fldBudgetCategory]);


По событию Form_Current делаю requery второй подформы (sfBCats_CCentres).
Всё хорошо работает - записи в подчиненной таблице отсеиваются по фильтру, но до тех пор, пока я не удалю какую-либо запись в таблице #1.
Даже при ответе НЕТ на запрос об удалении, в таблице #2 появляются ошибки #Имя?, и она перестаёт реагировать на Requery/Refresh.
Я нашел workaround - я задаю свойство RecordSource для подформы sfBCats_CCentres при каждом Form_Current, делаю "Requery" подформе и тогда всё работает.
Но я хочу понять - почему падает подчиненная форма? Явно при удалении записи из основной таблицы рушится какая-то связь, и даже при отмене транзакции (ответ "нет" в запросе) связь не восстанавливается.
ЧЯДНТ ? :)
...
Рейтинг: 0 / 0
Падает подчиненная форма при удалении записи из главной
    #39219587
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eugene_p1,

- если у вас есть нормальный интерфейс, то можно в настройках базы убрать галочки подтверждения действий запросов на изменение и удаление... если такие подтверждения нужны, то лучше их делать самому там где нужно в своем интерфейсе в том же vba, а иначе в ваш vba вклинивается сам акцес со своими заморочками, транзакциями и откатами...
- попробуйте в своей процедуре Form_Current первой формы вставить две строки (одну в начало, другую в конец) и скажите что будет со второй формой:

Начало Form_Current
On Error GoTo er1
.....
.....
.....
er1:
Конец Form_Current
...
Рейтинг: 0 / 0
Падает подчиненная форма при удалении записи из главной
    #39221465
Eugene_p1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vmag,

Сделал.
Ошибки не возникает. Просто в строках подчиненной таблицы появляется "#Имя?". Такое впечатление, что бьётся ссылка на источник данных, т.к. когда я раскомментировал
Код: vbnet
1.
[Forms]![Budget Categories]![sfBCats_CCentres].Form.RecordSource = "SELECT ...." 


, всё заработало нормально.
...
Рейтинг: 0 / 0
Падает подчиненная форма при удалении записи из главной
    #39241227
uux
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
uux
Гость
Eugene_p1, спасибо большое, что поделились решением проблемы!

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


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