16.03.2011, 11:38 | #1 |
Участник
|
Формирование транспортной накладной по отгрузке
Здравствуйте!
При отправке отгрузки, по заказу на продажу, формирую транспортную накладную, пытаюсь ее распечатать (Печать --> Транспортная накладная) из отгрузки (формат отчета Российский), DAX выдает инфолог: "Ошибка времени выполнения: WMSBillOfLadingReport_RU (Объект), метод parmBillOfLading вызван с недопустимыми параметрами. (C)\Classes\WMSBillOfLadingReport_RU\parmBillOfLading (C)\Classes\WMSBillOfLadingReport_RU\main - line 7 (S)\Classes\MenuFunction\run (S)\Classes\ReportDispatcher_W\run - line 4 (S)\Classes\WMSBillOfLadingDispatcher_W\main - line 4 (S)\Classes\MenuFunction\runServer (C)\Classes\FormFunctionButtonControl\Clicked (C)\Classes\FormMenuButtonControl\Clicked (C)\Classes\FormMenuButtonControl\Clicked - line 4" Идем в метод main в классе WMSBillOfLadingReport_RU и видим, что туда можно только передавать запись WMSBillOfLading... %( Хорошо, пытаемся по другому (Запросы --> Транспортная накладная --> Печать), DAX выдает инфолог: "Для транспортной накладной "Тра-ля-ля" не найдена накладная" %( Оказывает в методе fillDocument класса WMSBillOfLadingReport_RU ищется накладная по заказу на продажу с номером данной транспортной накладной, но фин. накладной по отгрузке еще не было обработано... %( Хорошо обрабатываем фин. накладную в отгрузке (в параметрах Расчеты с клиентами на вкладке отгрузка в поле Транспортная накладная стоит "Разноска накладной"), опля, DAX выдает инфолог "Транспортная накладная не найдена"... %( Смотрим метод constructFromInvoice таблицы WMSBillOfLading: X++: custInvoiceTransQuery = new QueryRun(_custInvoiceJour.queryCustInvoiceTrans()); custInvoiceTransQuery.query().dataSourceTable(tablenum(CustInvoiceTrans)).addRange(fieldnum(CustInvoiceTrans, QtyPhysical)).value(strfmt('!%1', queryValue(0))); custInvoiceTransQuery.query().dataSourceTable(tablenum(CustInvoiceTrans)).firstOnly(true); if (!custInvoiceTransQuery.next()) return wmsBillOfLading; Выяснил, что оно не равно нулю, если мы не обрабатываем Отборочную накладную. Но мне ее необходимо обрабатывать для отправки отгрузки... Вопрос: Локализаторы специально так сделали, Транспортную накладную можно распечатать только если есть связанная Фин. накладная или они просто забыли, что из Отгрузки то же можно создавать Транспортную накладную, или я что-то не до понял %) |
|
16.03.2011, 11:40 | #2 |
Участник
|
Совсем забыл DAX 5 SP1 RollUp 5.
|
|
16.03.2011, 12:00 | #3 |
Участник
|
Выбор в параметрах Разноска накладной определяет создание ТН именно в этот момент.
Для того чтобы можно было сформировать ТН в момент физического проведения следует выбрать Обновить отборочную накладную. По идее в этом ошибка. |
|
16.03.2011, 12:15 | #4 |
Участник
|
В том то и дело, что если настроить параметр "Обновить отборочную накладную", то запись в таблице транспортных накладных появляется (международная функциональность), а вот распечатать по ней русскую ТТН нельзя - требует накладную. Эта проблема еще с 4.0 тянется - Товарно-транспортная накладная (1-Т) в АХ 4.0.
__________________
Ivanhoe as is.. |
|
16.03.2011, 12:17 | #5 |
Участник
|
Цитата:
Сообщение от Ivanhoe
В том то и дело, что если настроить параметр "Обновить отборочную накладную", то запись в таблице транспортных накладных появляется (международная функциональность), а вот распечатать по ней русскую ТТН нельзя - требует накладную. Эта проблема еще с 4.0 тянется - Товарно-транспортная накладная (1-Т) в АХ 4.0.
|
|
16.03.2011, 13:45 | #6 |
Участник
|
Да, пропустил в топике - Формат Российский.
Согласен, стандартом пока что не обойтись.. |
|
17.03.2011, 00:28 | #7 |
Banned
|
Цитата:
Сообщение от Ivanhoe
В том то и дело, что если настроить параметр "Обновить отборочную накладную", то запись в таблице транспортных накладных появляется (международная функциональность), а вот распечатать по ней русскую ТТН нельзя - требует накладную. Эта проблема еще с 4.0 тянется - Товарно-транспортная накладная (1-Т) в АХ 4.0.
ТТН - это вообще головная боль, если печатать ее в пакетном режиме. В классе ...Excel..._RU появляется случайным образом ошибка в случайном месте. Помогает некий хотфикс ax32.exe от Microsoft. Коллега прочитал блоги и KB и предположил, что нарушается взаимодействие между AX и COM-объектом, поскольку Windows считает, что AX зависает, и заменяет ее - Аксапты - окно на некое dummy-окно "мертвой программы" на считанные секунды. |
|
17.03.2011, 11:35 | #8 |
Участник
|
Цитата:
Сообщение от EVGL
ТТН - это вообще головная боль, если печатать ее в пакетном режиме. В классе ...Excel..._RU появляется случайным образом ошибка в случайном месте. Помогает некий хотфикс ax32.exe от Microsoft. Коллега прочитал блоги и KB и предположил, что нарушается взаимодействие между AX и COM-объектом, поскольку Windows считает, что AX зависает, и заменяет ее - Аксапты - окно на некое dummy-окно "мертвой программы" на считанные секунды.
Ошибка чтения файлов XLS под Windows 7 Ошибка времени выполнения в ComExcelDocument_RU.findRange()
__________________
Axapta v.3.0 sp5 kr2 |
|
17.03.2011, 11:53 | #9 |
Banned
|
|
|
12.07.2011, 14:17 | #10 |
Участник
|
Цитата:
|
|
12.07.2011, 20:27 | #11 |
Administrator
|
Цитата:
__________________
Возможно сделать все. Вопрос времени |
|
12.07.2011, 20:42 | #12 |
Участник
|
Ax40. Была аналогичная плавающая ошибка в своем коде, выводящем документ в Excel через классы SysExcel*. Ошибка проявлялась только на Win7. Удалось отловить, что виснет при формировании query для вывода строк документа (корректном и довольно не сложном). Замена query на while select полностью решила проблему. Но в чем конкретно проблема с query, так и осталось непонятным. Тем более что под WinXP ошибки не было.
|
|