![]() |
#1 |
Участник
|
![]()
И снова всем доброго времени суток.
Прошу прощения за мои, возможно глупые, вопросы. Но без помощи точно не обойдусь. Возникла задача к таблице VendTable приделать поле, в которое заполняли пользователи сканированные договора с поставщиками. Почитав "умные" книги и статьи я понял, что данное поле может затормозить работу с данной таблицей. Решил вынести эти сканированные договора в отдельную таблицу, да и гибкости будет побольше. Одному поставщику можно будет хранить несколько сканированных договоров. Вобщем создал еще одну таблицу VendContractFile в ней 3 поля "Код документа", "Идентификатор поставщика", "Сканированный документ". В табличках CustTable и CustBankAccount я увидел, как красиво организована связь 1 ко многим. То есть при выборе банковского счета у контрагента отображаются только счета текущего контрагента. Захотел сделать так же. Сделал все по анологии. Ничего не получилось. Мои действия: в таблице VendContractFile создал индекс состоящий из 2-х полей "Код документа", "Идентификатор поставщика". В таблице VendTable создал поле "Код сканированного документа" и связь с таблицей VendContractFile по полям "Код поставщика" и "Код сканированного документа". Запускаю обозреватель таблицы VendTable, пытаюсь выбрать, из заранее введенных записей таблицы VendContractFile, получаю список всех записей таблицы, вместо желаемых (относящихся только к текущему клиенту). Ну все перепробовал, хоть головой об стену бейся. Неужели нужно код писать? ![]() |
|
![]() |
#2 |
Участник
|
В таблице VendTable ничего создавать не нужно.
В таблице VendContractFile поле VendAccount должно быть типа VendAccount, то есть ссылатся на таблицу VendTable (это сделано автоматом через связи на EDT) Каких либо дополнительных действий для работы dynalink не нужно. |
|
![]() |
#3 |
Участник
|
Офтоп: Насчет использования документооборота не думали?
|
|
![]() |
#4 |
Участник
|
Попробовал. Не получается. Мне нужна связь один ко многим. и при наличии курсора на клиенте, при выборе договоров, хочу получить (видеть все его договора). А если я никаких просто делаю ссылку через EDT то получаю все записи из таблицы VendContractFile
![]() |
|
![]() |
#5 |
Участник
|
Блин. Разобрался. Прошу прощения за глупый вопрос. Все просто решилось через отношения между таблицами. Просто расширенный тип данных с его отношением "портил" всю картину, и отношение было только по одному полю.
![]() |
|
|
![]() |
||||
Тема | Ответов | |||
Связи между таблицами | 19 | |||
Связи между таблицами 1:N и N:1 | 10 | |||
Связи между таблицами. | 7 | |||
Ссылки между таблицами | 7 | |||
связь между таблицами | 2 |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|