![]() |
#1 |
Участник
|
Связь VendInvoiceTrans и PurchLine
Как связать VendInvoiceTrans и PurchLine? По какому полю (полям)??
Задача: в репорте есть текущий vendInvoiceTrans - нужно вытащить его PurchLine, так как там дополнительная информация (ещё пара таблиц подключается). |
|
![]() |
#2 |
Участник
|
по полю InventTransId
|
|
|
За это сообщение автора поблагодарили: vadimiron (1). |
![]() |
#3 |
Участник
|
А связь n:1 (то есть много VendInvoiceTrans к одному PurchLine)?
|
|
![]() |
#4 |
MCT
|
он у вас найдет те строчки в которых есть этот лот, наверное, для надежности можно и еще и по ItemId добавить
__________________
Axapta book for developer |
|
![]() |
#5 |
Участник
|
По-моему, гораздо проще в вашем случае не тащить из VendInvoiceTrans PurchLine, а в методе VendInvoiceTrans.initFromPurchLine() скопировать в VendInvoiceTrans всю необходимую для построения будущих отчетов информацию и потом не париться связывая эти две таблицы.
Как они связаны ice уже ответил. |
|
![]() |
#6 |
MCT
|
Цитата:
![]()
__________________
Axapta book for developer |
|
![]() |
#7 |
Участник
|
С учетом удаления закупок - денормализации нет.
__________________
Ivanhoe as is.. |
|
![]() |
#8 |
MCT
|
Просто работал в одной конторе где весь модуль состял из четырех одинаковых по архитектуре таблиц. И для составления отчета или добаавления фукционала надо было писать жобики, обновляя все эти таблицы. Соответственно для постоения отчета нужна была только одна из них на выбор
![]()
__________________
Axapta book for developer |
|
![]() |
#9 |
Участник
|
У меня данная связь не проходит при создании View.
Создал datasource VendInvoiceTrans, в нём датасоурс PurchLine - соединил с помощью InventTransId - смотрю с помощью TableBrowser - нет ни одной записи, хотя таблицы по отдельности содержат много записей и многих InventTransId совпадает....не могу понять, почему View пустой |
|
![]() |
#10 |
Участник
|
А это по-вашему всегда минус?
Цитата:
Последний раз редактировалось petr; 28.08.2008 в 17:54. |
|
![]() |
#11 |
MCT
|
Axapta 3.0 SP4 все работает
__________________
Axapta book for developer |
|
![]() |
#12 |
MCT
|
отчего же ?
Да и по моему как то вы агресино начинаете... отчего же далек то?
__________________
Axapta book for developer |
|
![]() |
#13 |
Участник
|
Цитата:
Сообщение от vadimiron
![]() У меня данная связь не проходит при создании View.
Создал datasource VendInvoiceTrans, в нём датасоурс PurchLine - соединил с помощью InventTransId - смотрю с помощью TableBrowser - нет ни одной записи, хотя таблицы по отдельности содержат много записей и многих InventTransId совпадает....не могу понять, почему View пустой ![]() update: Впрочем, если уж очень нужна подобная связь, то похоже: VendInvoiceTrans->InventTrans->PurchLine Последний раз редактировалось Lemming; 28.08.2008 в 18:04. Причина: ... |
|
![]() |
#14 |
Участник
|
Цитата:
Вообщем, вы привели пример действительно излишней денормализации, и в этом действительно нет ничего хорошего. Но ветка про две конкретные таблицы VendInvoiceTrans и PurchLine, в контексте которых некоторая денормализация вполне логична и совершенно некритична. |
|
![]() |
#15 |
Участник
|
А вот так, по-моему, опасно. В InventTrans для одной VendInvoiceTrans может быть много проводок, если к каждой из них подцепится PurchLine, то будет ошибка, так как реально связь VendInvoiceTrans PurchLine n:1
|
|
|
За это сообщение автора поблагодарили: vadimiron (1). |
![]() |
#16 |
Участник
|
Я нашёл проблему: во View есть опция Relations (YES | NO). Я ставил на YES и думал, что так будет использоваться связь, которая прописана во View, а оказалась, что берётся связь, определённая на таблице (там связь построена по другому, но там одни нули и я не соединишь там никак), а связь во View просто игнорируется!
Маразм! Когда поставил NO и прописал связь через InventTransId - всё заработало как и ожидалось |
|
![]() |
#17 |
Участник
|
Хмм...согласен, просто обычно связи в первую очередь проверяю создавая Query, в общем поторопился. В любом случае я противник смешивать данные из проводок и их источника. Не говоря о том, что в случае Аксапты, т.н. денормализация иногда неплохо выруливает производительность.
|
|
![]() |
#18 |
MCT
|
Цитата:
![]() ![]() Цитата:
Сообщение от vadimiron
Маразм!
![]()
__________________
Axapta book for developer Последний раз редактировалось MikeR; 29.08.2008 в 09:03. |
|
|
За это сообщение автора поблагодарили: vadimiron (1). |
Теги |
join, нормализация бд |
|
![]() |
||||
Тема | Ответов | |||
Импорт строк PurchLine (через функционал) | 8 | |||
Связь таблиц InventTrans и PurchLine | 2 | |||
Создние PurchLine с ед. измерения типа 'Склад' | 0 | |||
Создние PurchLine | 4 | |||
Связь двух таблиц | 10 |
|