20.04.2016, 21:59 | #1 |
Участник
|
Консолидированные invoice
Объясните, пожалуйста, как устроены консолидированные накладные. ?
Я так понимаю, на основании нескольких заказов можно сформировать один invoice. Но как в том случае это организовано на уровне структур данных? Отсюда в частности вопросы: 1) Что прописывается в custInvoiceJour.SalesId. 2) Верно ли, что в custInvoiceTrans.SalesId прописываются ссылки на заказы, на основании которых сформирован инвойс? PS: Знающего консультанта нету, как и перекрестных ссылок. Поиск по коду параметра разноски sumBy и вариаций *InvoiceJour.SalesId не проясняет совсем для меня процесса(или у меня неверное понимание его в принципе). Прошу помощи знатоков Последний раз редактировалось kitty; 20.04.2016 в 22:07. |
|
20.04.2016, 22:31 | #2 |
Участник
|
Цитата:
Отсюда в частности вопросы:
1) Что прописывается в custInvoiceJour.SalesId. 2) Верно ли, что в custInvoiceTrans.SalesId прописываются ссылки на заказы, на основании которых сформирован инвойс? 2. CustInvoiceTrans.SalesId = CustInvoiceJour.SalesId, ссылка на оригинальный заказ из которого строка хранится в поле OrigSalesId. Вообще связь между заказом и накладной реализована через таблицу CustInvoiceSalesLink (Накладная клиента - таблица связей заказов на продажу), в простом случае, когда у нас по одному заказу одна накладная, запись одна, когда консолидированная накладная, на каждый заказ создается отдельная запись в этой таблице, посмотрите реализацию метода salesTable.lastInvoice().
__________________
Sergey Nefedov |
|
|
За это сообщение автора поблагодарили: kitty (1). |
21.04.2016, 15:00 | #3 |
Участник
|
Спасибо большое
То есть custInvoiceSalesLink по идее не нужна ( тк можно через salesId, origSalesId найти всю ту же информацию)? Также , можно и сам оригинальный заказ искать двумя способами: a) custInvoiceTrans.salesLine().SalesTable(), где salesLine ищется через custInvoiceTrans.InventTransId b) salesTable::find(custInvoiceTrans.origSalesId) - эти записи приведут к одинаковым результатам, так? Последний раз редактировалось kitty; 21.04.2016 в 15:02. |
|
21.04.2016, 16:07 | #4 |
Участник
|
Цитата:
Также , можно и сам оригинальный заказ искать двумя способами:
a) custInvoiceTrans.salesLine().SalesTable(), где salesLine ищется через custInvoiceTrans.InventTransId b) salesTable::find(custInvoiceTrans.origSalesId) - эти записи приведут к одинаковым результатам, так? Цитата:
То есть custInvoiceSalesLink по идее не нужна ( тк можно через salesId, origSalesId найти всю ту же информацию)?
__________________
Sergey Nefedov |
|
|
|