Проблема при построении отношений master-detail

При попытке построить связь master-detail мастером ничего не произошло - форма не приняла новую связь.

Он должен создать отношение в списке отношений, но оно не создается. При попытке построить отношения вручную я получил сообщение

Ошибка при разборе условия соединения

В чем проблема?


person user11161741    schedule 05.06.2020    source источник


Ответы (1)


Связь создается между элементами формы, а не столбцами таблицы. Например, если есть имена столбцов с именами master.department_number и detail.department_number, когда вы решили переименовать элементы в :master.deptno и :detail.deptno, вам придется присоединиться к последним, а не к первым: :master_deptno = :detail.deptno

Иногда имя блока данных создает проблемы; если это ваш случай, опустите имена блоков в отношениях, то есть просто используйте :deptno = :deptno (выглядит глупо, но - помогает).

Кроме того, Мастер довольно успешно создает отношения мастер-деталь. Проверьте, содержит ли мастер-блок уже созданные им триггеры (например, on-populate-detail). В этом случае либо удалите их, либо переименуйте, а затем снова запустите мастер.


Если при запросе блока сведений возвращаются все строки вместо тех, которые удовлетворяют условию связи, создается Мастер кода двойной проверки. Если вы не можете найти причину, попробуйте создать PRE-QUERY триггер на уровне блока детализации и поставить

:detail.deptno = :master.deptno;

там; затем снова запустите форму и посмотрите, что произойдет.

person Littlefoot    schedule 05.06.2020
comment
я удалил старые отношения и перестроил их снова. отношение построено. но теперь, когда я запрашиваю блок сведений, извлекаю все записи независимо от условия. почему? например, все записи в таблице сотрудников независимо от отдела - person user11161741; 05.06.2020
comment
Я добавил в ответ дополнительную информацию; Посмотрите, пожалуйста. - person Littlefoot; 05.06.2020
comment
большое спасибо, как всегда ваши решения работают ???? - person user11161741; 06.06.2020