|
|
#21 |
|
Сам.AX
|
Цитата:
Сообщение от 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);
}
}
} |
|
|
|
|
#22 |
|
MCITP
|
А этот ваш метод как называется?
Чтобы сопоставить по приведённому стеку...
__________________
Zhirenkov Vitaly |
|
|
|
|
#23 |
|
Сам.AX
|
|
|
|
|
|
#24 |
|
Сам.AX
|
Вобщем оставил условие определения клиента и сервера и на сервере запускаю так:
X++: fileIOperm = new FileIOPermission(printerName,"w"); fileIOperm.assert(); paramStr = scriptZebra + " > "+printerName; WinApi::shellExecute("cmd","/c ECHO "+paramStr,'','',0); CodeAccessPermission::revertAssert(); |
|
|
| Теги |
| winapi, печать, печать этикеток |
|
|
|