30.05.2013, 13:05 | #1 |
Участник
|
Пакетная печать документов в Excel
Microsoft Dynamics Ax 2012
Добрый день. Кто нибудь настраивал пакетную печать документов в Excel? При попытке сделать разноску накладной и затем вывести ее на печать с помощью пакетной обработки, выдает ошибку: Microsoft.Dynamics.Ax.Xpp.InvalidRemoteCallException: Exception of type 'Microsoft.Dynamics.Ax.Xpp.InvalidRemoteCallException' was thrown. at Dynamics.Ax.Application.XMLExcelReport_TORG12_RU.construct() at Dynamics.Ax.Application.SalesPurchReport_Invoice_RU.Run() in SalesPurchReport_Invoice_RU.run.xpp:line 12 at Dynamics.Ax.Application.SalesPurchReport_RU.executeWithPrintMgmtTorg12M15(Args _args, PrintMgmtPrintSettingDetail _settingDetail, Int64 _recordId) in SalesPurchReport_RU.executeWithPrintMgmtTorg12M15.xpp:line 50 at Dynamics.Ax.Application.NonSSRSPrintMgmtAdapter.Executenonssrsreport(PrintMgmtPrintSettingDetail _setting) in NonSSRSPrintMgmtAdapter.executeNonSSRSReport.xpp:line 14 at Dynamics.Ax.Application.NonSSRSPrintMgmtAdapter.Outputreports() in NonSSRSPrintMgmtAdapter.outputReports.xpp:line 14 at Dynamics.Ax.Application.SalesInvoiceNonSSRSPrintMgmtAdapter.Runprintmgmt() in SalesInvoiceNonSSRSPrintMgmtAdapter.runPrintMgmt.xpp:line 43 at Dynamics.Ax.Application.NonSSRSPrintMgmtAdapter.runPrintMgmtNonSSRS(PrintMgmtDocumentType _printMgmtDocumentType, Args _args) in NonSSRSPrintMgmtAdapter.runPrintMgmtNonSSRS.xpp:line 25 at Dynamics.Ax.Application.SalesInvoiceController.main(Args _args) in SalesInvoiceController.main.xpp:line 21 at SalesInvoiceController::Main(Object[] ) at Microsoft.Dynamics.Ax.Xpp.ReflectionCallHelper.MakeStaticCall(Type type, String MethodName, Object[] parameters) at Dynamics.Ax.Application.MenuFunction.Run(xArgs _args, Boolean ) in MenuFunction.run.xpp:line 76 at Dynamics.Ax.Application.CustInvoiceJour.Printjournal(SalesInvoiceJournalPrint journalPrint, RecordSortedList journalList, NoYes copy, NoYes parmPrintFormLetter, NoYes parmPrintAcceptanceReport, NoYes parmPrintBillOfLading, NoYes parmPrintInventBaileeReport, NoYes parmPrintTransportInvoice, Boolean , Boolean , Boolean , Boolean , Boolean , Boolean , Boolean , Boolean ) in CustInvoiceJour.printJournal.xpp:line 104 at Dynamics.Ax.Application.SalesInvoiceJournalPrint.Doprint() in SalesInvoiceJournalPrint.doPrint.xpp:line 7 at Dynamics.Ax.Application.FormletterJournalPrint.Printjournal(Set _journalList) in FormletterJournalPrint.printJournal.xpp:line 34 at Dynamics.Ax.Application.SalesInvoiceJournalPrint.Printjournal(Set _journalList) in SalesInvoiceJournalPrint.printJournal.xpp:line 13 at Dynamics.Ax.Application.FormletterService.Printjournal() in FormletterService.printJournal.xpp:line 33 at Dynamics.Ax.Application.FormletterService.Printout() in FormletterService.printOut.xpp:line 11 at Dynamics.Ax.Application.FormletterService.Endposting(Printout _printout) in FormletterService.endPosting.xpp:line 14 at Dynamics.Ax.Application.FormletterService.Endpostingmultithread() in FormletterService.endpostingMultithread.xpp:line 25 at Dynamics.Ax.Application.FormletterServiceEndBatchTask.Run() in FormletterServiceEndBatchTask.run.xpp:line 12 at Dynamics.Ax.Application.BatchRun.runJobStaticCode(Int64 batchId) in BatchRun.runJobStaticCode.xpp:line 54 at Dynamics.Ax.Application.BatchRun.runJobStatic(Int64 batchId) in BatchRun.runJobStatic.xpp:line 13 at BatchRun::runJobStatic(Object[] ) at Microsoft.Dynamics.Ax.Xpp.ReflectionCallHelper.MakeStaticCall(Type type, String MethodName, Object[] parameters) at BatchIL.taskThreadEntry(Object threadArg) |
|
30.05.2013, 13:26 | #2 |
Участник
|
OXML классы используют клиентский класс WinApi а сейчас Batch Server работает без клиента.
Нужно править код. |
|
|
За это сообщение автора поблагодарили: Swordec (1). |
30.05.2013, 18:36 | #3 |
Участник
|
Цитата:
|
|
|
За это сообщение автора поблагодарили: Logger (1). |
31.05.2013, 09:04 | #4 |
Участник
|
|
|
31.05.2013, 09:50 | #5 |
Ищущий знания...
|
Цитата:
Мне кажется любой реализованный сценарий должен корректно выполняться. Если считается, что все равно его использовать не будут, тогда не надо его реализовывать. P.S. напомнило Первый тест-драйв Lada Kalina 2 в частности: Цитата:
На тестовом полигоне при прохождении «змейки» у коллеги заклинил руль – представители завода заявили, что с потребителем такого не случится, он, мол, не будет крутить руль до упора на больших скоростях…
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с) С Уважением, Елизаров Артем Последний раз редактировалось lev; 31.05.2013 в 10:16. |
|
31.05.2013, 12:58 | #6 |
Участник
|
Цитата:
Цитата:
Мне кажется любой реализованный сценарий должен корректно выполняться. Если считается, что все равно его использовать не будут, тогда не надо его реализовывать.
- Может быть что сценарий не написан, но у клиента он возникает - Может быть что сценарий написан, но в реализации ошибка В этом случае возникает вопрос (упрощая), какую из таких ошибок править первой. Для этого надо расставлять приоритеты. Возможна ситуация, когда функциональность пока никем не используется. Регистрация ошибки в позволяет показать, что функциональность используется, а также сообщить важность самой ошибки. Цитата:
P.S. напомнило Первый тест-драйв Lada Kalina 2
в частности: |
|
11.06.2013, 13:47 | #7 |
Участник
|
Добрый день.
С помощью visual studio я попытался дебажить пакет, чтобы определить где используется WinApi и заменить на WinApiServer. Когда в методе run класса SalesPurchReport_Invoice_RU доходит до строки "reportPrint = XMLExcelReport_TORG12_RU::construct();"(рис. 1), то при нажатии на клавишу F11 я должен попасть в метод construct класса XMLExcelReport_TORG12_RU, но оно пропускает это и переходит в метод runJobStaticCode класса BatchRun(рис. 2). Я попытался поставить точку останова в методе construct класса XMLExcelReport_TORG12_RU, возникает ошибка "The reakpoint will not currently be hit. No symbols have been loaded for this document."(рис.3). |
|
11.06.2013, 13:54 | #8 |
Участник
|
Изменили ли вы runOn: client у класса XMLExcelReport_TORG12_RU?
Последний раз редактировалось belugin; 11.06.2013 в 13:58. |
|
21.06.2013, 11:29 | #9 |
Участник
|
При попытке сделать разноску накладной и затем вывести ее на печать с помощью пакетной обработки, выдает ошибку:
X++: System.NullReferenceException: Object reference not set to an instance of an object. at Microsoft.Dynamics.Ax.Xpp.Set.elements() at Dynamics.Ax.Application.FormletterJournalPrint.Printjournal(Set _journalList) in FormletterJournalPrint.printJournal.xpp:line 26 at Dynamics.Ax.Application.SalesInvoiceJournalPrint.Printjournal(Set _journalList) in SalesInvoiceJournalPrint.printJournal.xpp:line 13 at Dynamics.Ax.Application.FormLetterServiceController.Afteroperationprint() in FormLetterServiceController.afterOperationPrint.xpp:line 20 at Dynamics.Ax.Application.FormLetterServiceController.Afteroperationbody() in FormLetterServiceController.afterOperationBody.xpp:line 6 at Dynamics.Ax.Application.SalesFormLetter.Afteroperationbody() in SalesFormLetter.afterOperationBody.xpp:line 6 at Dynamics.Ax.Application.SalesFormLetter_Invoice.Afteroperationbody() in SalesFormLetter_Invoice.afterOperationBody.xpp:line 6 at Dynamics.Ax.Application.FormLetterServiceController.Afteroperation(SysOperationExecutionMode _executionMode, AifAsyncResult _asyncResult) in FormLetterServiceController.afterOperation.xpp:line 7 at Dynamics.Ax.Application.SysOperationServiceController.Run() in SysOperationServiceController.run.xpp:line 70 at Dynamics.Ax.Application.FormLetterServiceController.Run() in FormLetterServiceController.run.xpp:line 3 at Dynamics.Ax.Application.SalesFormLetter.Run() in SalesFormLetter.run.xpp:line 72 at Dynamics.Ax.Application.SalesFormLetter_Invoice.Run() in SalesFormLetter_Invoice.run.xpp:line 6 at Dynamics.Ax.Application.BatchRun.runJobStaticCode(Int64 batchId) in BatchRun.runJobStaticCode.xpp:line 54 at Dynamics.Ax.Application.BatchRun.runJobStatic(Int64 batchId) in BatchRun.runJobStatic.xpp:line 13 at BatchRun::runJobStatic(Object[] ) at Microsoft.Dynamics.Ax.Xpp.ReflectionCallHelper.MakeStaticCall(Type type, String MethodName, Object[] parameters) at BatchIL.taskThreadEntry(Object threadArg) Последний раз редактировалось Swordec; 21.06.2013 в 11:51. |
|
21.06.2013, 16:14 | #10 |
Участник
|
1. Если отключит Il то работает?
2. Попробуйте поставить точку останова в vs |
|
21.06.2013, 18:51 | #11 |
Участник
|
В обычном режиме все нормально, но в пакете в методе printJournal класса FormLetterJournalPrint доходит до строк
X++: if (journalList.len() > 0 // <GEERU> || (SysCountryRegionCode::isLegalEntityInCountryRegion([#isoRU]) && factureList.elements() > 0) // </GEERU> ) Последний раз редактировалось Swordec; 21.06.2013 в 18:55. |
|
Теги |
ax2012, cil, excel, open xml, баг, ошибка, пакетная обработка, пакетный сервер |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|