На ШТРИХе так
Х-отчет
IF ocxDriver.ECRAdvancedMode = 3 THEN //ФР ждет команду Продолжения Печати
ocxDriver.ContinuePrint
ELSE
ocxDriver.PrintReportWithoutCleaning;
SLEEP(3000)
ocxDriver.GetECRStatus();
ocxDriver.StringQuantity := 6;
ocxDriver.FeedDocument;
ocxDriver.CutCheck;
__________________
Z-отчет
IF ocxDriver.ECRAdvancedMode = 3 THEN //ФР ждет команду Продолжения Печати
ocxDriver.ContinuePrint
ELSE
ocxDriver.PrintReportWithCleaning;
ocxDriver.GetECRStatus();
//--------------
IF ocxDriver.ECRAdvancedMode >= 4 THEN BEGIN
dlg.OPEN(Text1053);
dlg.UPDATE(1, 'ФР печатает Z-отчет');
dlg.UPDATE(2, ocxDriver.ECRMode);
dlg.UPDATE(3, ocxDriver.ECRModeDescription);
dlg.UPDATE(4, ocxDriver.ECRAdvancedMode);
dlg.UPDATE(5, ocxDriver.ECRAdvancedModeDescription);
REPEAT
SLEEP(1000);
ocxDriver.GetECRStatus();
Phase:='Ожидание изменения режима ФР после Z-отчета';
IF NOT ExecutedSuccess THEN
EXIT(FALSE)
UNTIL ocxDriver.ECRAdvancedMode IN [0, 2, 3];
dlg.CLOSE;
END;
IF ((ocxDriver.ECRMode=12) AND // Печать отчета ЭКЛЗ
(ocxDriver.ECRAdvancedMode=0)) THEN BEGIN // Бумага есть
dlg.OPEN('Закрытие смены \'+
'Режим #1###################\'+
'#2#########################');
REPEAT
ocxDriver.GetECRStatus();
dlg.UPDATE(1, ocxDriver.ECRMode);
dlg.UPDATE(2, ocxDriver.ECRModeDescription);
SLEEP(1000);
UNTIL ocxDriver.ECRMode=4;
dlg.CLOSE;
END ;
SLEEP(1000);
ocxDriver.GetECRStatus();
//----------------
Phase:='Отрезка после Z-отчета';
ocxDriver.StringQuantity := 6;
ocxDriver.FeedDocument;
|