AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 14.09.2009, 14:40   #21  
Alexx7 is offline
Alexx7
Сам.AX
Аватар для Alexx7
Самостоятельные клиенты AX
1C
 
305 / 28 (1) +++
Регистрация: 22.07.2009
Цитата:
Сообщение от ZVV Посмотреть сообщение
ну во-первых покажите весь цикл,
а во-вторных, по мере ненадобности предыдущие "ассерты" надо отменять, я ж писал:
X++:
CodeAccessPermission::revertAssert();
я ж так понимаю у вас один файл обрабатывается в каждой итерации цикла?
Значит в начале итерации - assert, в конце - revertAssert...
Вот:
X++:
   InventDim               inventDim;
    ProdJournalProd         pjp;
    str                     _printStr;
    InventTrans             inventTrans;
    InventTable             inventTable;
    PrintLabel pL           = new printLabel();
    container               cnt;
    TextIO                  txtFile;
    str                     printerName,scriptZebra;
    FileIOPermission        fileIOperm;

    while
        select * from pjp
        where ProdJournalTable.JournalId == pjp.JournalId
        {
            while
                select * from inventTrans
                where inventTrans.InventTransId == pjp.InventTransId
                {
                    while
                        select * from inventDim
                        where inventDim.inventDimId == inventTrans.inventDimId
                        {
                            select * from inventTable
                            where inventTable.ItemId == ProdTable::find(pjp.ProdId).ItemId;
                            //breakpoint;
                            _printStr = inventTable.NameAlias;
                            _printStr += "|"+date2str(pjp.TransDate,123,2,2,2,2,2);
                            _printStr += "|"+inventDim.inventSerialId;
                            _printStr += "|"+inventDim.InventLocationId;
                            _printStr += "|"+inventTable.ItemId;
                            _printStr += "| С/П"+int2str(ProdTable::find(pjp.ProdId).Height)+'X'+int2str(ProdTable::find(pjp.ProdId).Width)+'|';

                            cnt = pL.PrintMmethod(_printStr);

                            printerName = conpeek(cnt,1);
                            scriptZebra = conpeek(cnt,2);

                            if (_clserv == 'client') // client
                            {
                                txtFile = new TextIo(printerName, "w", 866);
                                txtFile.write(ansi2ascii(scriptZebra));
                            }
                            else // server
                            {
                                fileIOperm = new FileIOPermission(printerName,"w");
                                fileIOperm.assert();
                                txtFile = new TextIo(printerName, "w", 866);
                                txtFile.write(ansi2ascii(scriptZebra)); //Вот тут уходит в ошибку
                                CodeAccessPermission::revertAssert();
                            }
                            sleep(2000);
                        }
                }
        }
Старый 14.09.2009, 14:48   #22  
ZVV is offline
ZVV
MCITP
MCP
Oracle
MCBMSS
 
1,006 / 246 (11) ++++++
Регистрация: 13.02.2004
Адрес: Минск
->
А этот ваш метод как называется?
Чтобы сопоставить по приведённому стеку...
__________________
Zhirenkov Vitaly
Старый 14.09.2009, 14:50   #23  
Alexx7 is offline
Alexx7
Сам.AX
Аватар для Alexx7
Самостоятельные клиенты AX
1C
 
305 / 28 (1) +++
Регистрация: 22.07.2009
Цитата:
Сообщение от ZVV Посмотреть сообщение
А этот ваш метод как называется?
Чтобы сопоставить по приведённому стеку...
void createPrnString(prodJournalTable prodJournalTable, str _clserv)
Старый 14.09.2009, 16:07   #24  
Alexx7 is offline
Alexx7
Сам.AX
Аватар для Alexx7
Самостоятельные клиенты AX
1C
 
305 / 28 (1) +++
Регистрация: 22.07.2009
Вобщем оставил условие определения клиента и сервера и на сервере запускаю так:

X++:
fileIOperm = new FileIOPermission(printerName,"w");
fileIOperm.assert();
paramStr = scriptZebra + " > "+printerName;
WinApi::shellExecute("cmd","/c ECHO "+paramStr,'','',0);
CodeAccessPermission::revertAssert();
Работает нормально.
Теги
winapi, печать, печать этикеток

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
gatesasbait: Dynamics AX 2009 SSRS and SSAS Integration Tips Blog bot DAX Blogs 3 09.07.2009 13:07
axStart: Microsoft Dynamics AX 2009 Hot Topics Web Seminar Series Blog bot DAX Blogs 0 06.08.2008 12:05
Arijit Basu: AX 2009 - Quick Overview Blog bot DAX Blogs 4 19.05.2008 14:47
AX UK: Demand Planner on the AX 4 SP 1 VPC Blog bot DAX Blogs 0 10.08.2007 23:40
AX UK: Microsoft Dynamics AX 4.0 SP 1 available for download Blog bot DAX Blogs 3 07.12.2006 17:43

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 15:00.