Автоматическая печать документов в БОУРМ
Сохранить в файлеОбсудить в форуме
Описание
Макросы действия после приема, реализующие автоматическую печать платежных документов (aftrcv.mac) и писем (aftrcLet.mac)
Текст примера
/* Макрос действия после приема AFTRCV.MAC*/ import "constant.mac"; /* Структура платежного документа для загрузки в АБС */ RECORD CurrentRecord(clbpdoc); /* Ф-ции */ MACRO mod(a,b) return a - (a/b)*b; END; /* Entry point */ MACRO mainAfterReceive() println("RSL версия ",Version()/100,".",mod(Version()/10,10),mod(Version(),100)); println("Макрос действия после приема рублевой платежки клиента банка. Версия 1.00.000"); var filename; var ret=cbLoadCurrentDocInABS(CurrentRecord); println("Код возврата АБС = ",ret); println("id=",CurrentRecord.id); println("operDocId=",CurrentRecord.operDocId); if(ret != clbcabsLoadedInABS) println("Ошибка при загрузке в АБС: ",cbGetReturnDesc()); return cbSetReturnDesc(string("Ошибка при загрузке в АБС: \n",cbGetReturnDesc())); end; /*Дальше печать на сетевой принтер, но можно и в LPT*/ filename = cbPrintMsg(CurrentRecord,3); run (GetEnv("COMSPEC"),"/c copy "+filename+" \\\\emel\\ep_fx-870"); return true; end; /*********************************************************/ /* Макрос действия после приема aftrcLet.mac - письма*/ import "constant.mac",cbmFormFields; RECORD CurrentRecord(clbimsg); MACRO mainAfterReceive() var filename = cbPrintMsg(CurrentRecord,1); run (GetEnv("COMSPEC"),"/c copy "+filename+" \\\\emel\\ep_fx-870"); return true; END;