16.03.2006, 10:20 | #1 |
Moderator
|
lastValueElementName
Доброе утро!
Запускаю печать ТОРГ-13 из job-а: PHP код:
Запускаю из своего класса наследника SalesReport_Invoice_RU. Вылетает на методе PHP код:
В чем может быть дело?? pack и unpack реализованы стандартно. |
|
16.03.2006, 11:31 | #2 |
Участник
|
Ошибку выдает? Какую? Report стандартный используется (SalesPurchInvoice_RU)?
|
|
16.03.2006, 11:38 | #3 |
Moderator
|
Ошибка в том что не найден метод lastValueElementName()
Report с доработками, и возможно немного запутал я печатаю ТОРГ-13 (InventJournalReport_Transfer_RU) из наследника класса который предназначен для печати ТОРГ-12(SalesPurchInvoice_RU) (тоже с доработками). Вылетает даже если вызваю из статического метода другого класса. Если же вызывать просто job или самостоятельный класс (обрнутый job) то прекрасно печатается. |
|
16.03.2006, 12:09 | #4 |
Участник
|
А как запускаете отчет на выполнение, так же как написано в jobe? Обратите внимание, что у этих двух классов (вашего наследника от SalesPurchInvoice_RU и InventJournalReport_Transfer_RU) разная архитектура. Т.е. InventJournalReport_Transfer_RU не наследуется от RunBase.
|
|
16.03.2006, 12:16 | #5 |
Moderator
|
Да, запускаю аналогично job-у.
Архитектура разная, но не вижу связи между запуском статического метода (нового, специально созданного класса) на наследнике SalesPurchInvoice_RU и печатью ТОРГ013 -- веь я в метод передаю только курсор InventJournalTable и процесс (ИМХО, по крайней мере ожидал) идет в другом месте не связанном с ТОРГ-12. Возможно, для ТОРГ-13 распаковываются данные ТОРГ-12. |
|
16.03.2006, 12:36 | #6 |
Участник
|
Цитата:
Сообщение от DreamCreator
Возможно, для ТОРГ-13 распаковываются данные ТОРГ-12.
|
|
16.03.2006, 12:53 | #7 |
Moderator
|
Можно смоделировать ситуацию так:
В класс SalesReport_Invoice_RU в метод main, в самый конец добавить вызов TORG13:rintReport(); // TODO После тестирования убрать Тестовый класс TORG13 прилагаю (в нем надо проставить существующий складской журнал + можно запускать самостоятельно для проверки печати ТОРГ-13) |
|
17.03.2006, 12:56 | #8 |
Moderator
|
Сообщение об ошибке
---------------------------
Microsoft Business Solutions-Axapta Debugger --------------------------- Ошибка времени выполнения. : InventJournalProforma_RU Объект не инициализирован. Трассировка стека: (C) \Classes\InventJournalProforma_RU\reportName (C) \Classes\InventJournalProforma_Print_RU\lastValueElementName - line 3 (C) \Classes\RunBaseReport\makeReportRun - line 1 (C) \Classes\RunBaseReport\unpack - line 21 (C) \Classes\InventJournalProforma_Print_RU\unpack - line 17 (C) \Classes\RunBase\promptUnpack - line 4 (C) \Classes\RunBaseBatch\promptUnpack - line 7 ... (S) \Classes\WMTransferJourPost\main - line 23 (S) \Classes\MenuFunction\run (S) \Classes\InvoiceCreator_WMSTransfer\run - line 20 (S) \Classes\InvoiceCreator\main - line 51 (S) \Classes\MenuFunction\runServer (C) \Classes\FormFunctionButtonControl\Clicked (C) \Classes\FormMenuButtonControl\Clicked --------------------------- ОК --------------------------- |
|
17.03.2006, 15:20 | #9 |
Участник
|
Работает. Почему-то у тебя вызывается reportName не в том классе, в котором нужно...
|
|
|
За это сообщение автора поблагодарили: DreamCreator (1). |
17.03.2006, 15:32 | #10 |
Moderator
|
У меня код на картинке тоже хорошо отрабатывает, а потом идет код приведенный мной -- т.е. мой -- это вторая распаковка.
(Отличие в стеке можно видеть ниже строки (C) \Classes\InventJournalProforma_Print_RU\unpack - line 17) |
|
17.03.2006, 15:33 | #11 |
Участник
|
Причина в том, что в первом случае запуск идет на клиенте, а во втором случае - на сервере.
Обрати внимение на реализацию метода Main() класса InventJournalProforma_Print_RU. В нем, после создания экземпляра класса, идет вызов метода initReportData(). В этом методе происходит инициализация Report Так же обрати внимание на вызов runbase:romptOnClient() в методе PromptPrim() класса RunBase. Экземпляр этого класса так же создается на клиенте, но уже без вызова метода initReportData(), т.е. Report == null. И дальнейший вызов lastValueElementName() этого экземпляра приводит к возникновения ошибки
__________________
Axapta v.3.0 sp5 kr2 |
|
|
За это сообщение автора поблагодарили: DreamCreator (1). |
17.03.2006, 15:55 | #12 |
Moderator
|
Большое Спасибо! То что надо!
|
|