Здравствуйте. Изучая функционал, встретил такую вещь как Регистрация Накладных -> Журнал одобрения накладных.
(AX-300-USG-007-v01.00-RU (Управление торговлей и логистикой). стр 67
Axapta 3. SP3
Самый первый косяк который возник - это открытие журнала одобрения накладных. Нажатие кнопки "Выбрать документы" приводило к появлению пустому окну без каких либо накладных. Благодаря мониторингу SQL удалось поймать такое соединение таблиц:
PHP код:
SELECT
*
FROM
LEDGERJOURNALTRANS A(NOLOCK)
WHERE ((A.DATAAREAID='dat') AND (((A.JOURNALNUM='ГКНЖ000009') AND (A.ACCOUNTTYPE=2))
AND (A.APPROVED=0)))
AND EXISTS
(SELECT 'x' FROM VENDTRANS B(NOLOCK)
WHERE ((B.DATAAREAID='dat') AND (((((((B.ARRIVAL=1)
AND (B.APPROVED=0))
AND (B.JOURNALNUM='ГКНЖ000009'))
AND (A.ACCOUNTNUM=B.ACCOUNTNUM))
AND (A.VOUCHER=B.VOUCHER))
AND (A.TRANSDATE=B.TRANSDATE))
AND (A.INVOICE=B.INVOICE))
))
ORDER BY A.DATAAREAID DESC,A.JOURNALNUM DESC,A.VOUCHER DESC,A.LINENUM DESC OPTION(FAST 1)
При детальном изучении оказалось, что типы полей LEDGERJOURNALTRANS.AccountNum и VENDTRANS.AccountNum различаются.
Выполнение объединения решил напрямую - подменив тип у LEDGERJOURNALTRANS.AccountNum.
Результатом стало отображение накладных в выборке.
Однако, дальше обнаружилось вот что:
В окне строк "Журнала одобрения накладных" по документации значится "Тип счета" и "Счет", который будет дебетоватся на сумму по накладной (с вычетом налогов). В реальности же у меня поля "Тип счета" и "Код поставщика". Т.о., Акса, если я указываю тип счета ГК и счет 41 (к примеру) ругается на отсутствие такого поставщика. Ошибки нет только при условии выбора типа "Поставщик".
ПО документации же значится, цитирую "Укажите счет прихода товаров". И сумма дебетования. Дебетовать поставщика его же товарами, мне кажется нет никакого резона.
Вопрос - это функционал, возможно, вообще никем используется и поэтому на него "забил" MS?
Если же я протупил где-то, прошу объяснить.
P.S. Насколько корректна подмена типа?