Автоматизированное рабочее место оператора автоматизированного переговорного пункта и информационной системыРефераты >> Программирование и компьютеры >> Автоматизированное рабочее место оператора автоматизированного переговорного пункта и информационной системы
ПРИЛОЖЕНИЕ 3
Текст программы монитора АПП-РК
iapbckg | |
iapbckg(%an) |
;IAKoff;03:44 PM 6 Mar 1996 |
n %cc,%free,%zone,%cmd,%i,%summ,%tsec,%tmin,%min,%hour,%sec,%cod,%idev | |
n %cabspis,%to,%hl,%SHARE,%noper,%nsmen | |
s %SHARE=$$SHARE^AppSyst() | |
s $zp=$c(30) s $ztrap="errhndr^iapbckgsub" | |
s ^appstat("CMD")="WAIT" | |
s ^appstat("STATUS")="INIT" | |
o %an u %an:(ixxlate=0:speed=2400:parity="none":stopbits=1) | |
d addjrn^iapbckgsub("APPRK","Запуск Апп монитор","") | |
w "E*" | |
k ^appzxcab | |
k ^appcab | |
f %i=1:1:32 d | |
. s ^appcab(%i)="-1"_$zp_"0"_$zp_"00.00"_$zp_"00.00"_$zp_""_$zp | |
. s ^appcab(%i)=^appcab(%i)_"00.00"_$zp_""_$zp_"0"_$zp_"0"_$zp | |
. s ^appcab(%i)=^appcab(%i)_"0"_$zp_"0"_$zp_"0"_$zp_"00.00"_$zp | |
. s ^appcab(%i)=^appcab(%i)_"-1"_$zp_"0" | |
. w "O"_%i_"*" | |
. f %zone=0:1:20 s ^appcab(%i,%zone)="0"_$zp_"0" | |
. f %zone=128:1:148 s ^appcab(%i,%zone)="0"_$zp_"0" | |
s %ws=0 | |
freecab |
; получить список кабин |
s %ws=%ws+1 | |
i %ws=20 g thlt | |
s ^appstat("STATUS")="CAB OFF" | |
w "I*" | |
s ^appstat("STATUS")="LIST" | |
w "S*" | |
s %free=$$gres^iapbckgsub() i %free="HALT" g thlt | |
i %free="TIME" g thlt | |
s %i=1 | |
ncab | |
s %cmd=$p(%free," ",%i+1) | |
s %cc=$e(%cmd,1,2)+0 | |
s %cod=$e(%cmd,3,3) | |
i %cmd="" g lastcab | |
i (%cc>32)!(%cc<1) d addjrn^iapbckgsub("APPRK","InitError Cab",%free) g freecab | |
i (%cod'="A")&(%cod'="P") d addjrn^iapbckgsub("APPRK","InitError Stat",%free) g freecab | |
s %cabspis(%i)=%cc | |
s ^appcab(%cc).1=0 | |
s ^appcab(%cc).2=2 i %cod="A" s ^appcab(%cc).2=1 | |
s %i=%i+1 | |
g ncab | |
lastcab | |
; --------------------------- | |
; Загрузка системных установок | |
s ^appstat("STATUS")="SETUP" | |
w "P"_^appstat("SETUP")_"*" | |
; --------------------------- | |
; Загрузка тарифов по СНГ | |
LoadTarif | |
s ^appstat("STATUS")="TARIF" | |
i $d(^appstat("TARIF","AUTO8"))=0 g nosngtarif | |
s %zone="" s %cmd="" | |
nx1tarif | |
s %zone=$o(^appstat("TARIF","AUTO8",%zone)) | |
i %zone="" g ldtarif1 | |
s %sec=$p(^appstat("TARIF","AUTO8",%zone),$c(30),%SHARE+1) | |
i %sec<20 s %sec=%sec*^AppSys58("USD_KURS") | |
s %cmd=%cmd_$$dec2hex^iapbckgsub(%sec) g nx1tarif | |
ldtarif1 | |
w "L"_$c($l(%cmd))_$c(0)_%cmd_"*" | |
; Загрузка международных тарифов | |
nosngtarif | |
i $d(^appstat("TARIF","AUTO810"))=0 g nofgrtarif | |
s %zone="" s %cmd="" | |
nx2tarif | |
s %zone=$o(^appstat("TARIF","AUTO810",%zone)) | |
i %zone="" g ldtarif2 | |
s %sec=$p(^appstat("TARIF","AUTO810",%zone),$c(30),%SHARE+1) | |
i %sec<20 s %sec=%sec*^AppSys58("USD_KURS") | |
s %cmd=%cmd_$$dec2hex^iapbckgsub(%sec) g nx2tarif | |
ldtarif2 | |
w "L"_$c($l(%cmd))_$c(255)_%cmd_"*" | |
nofgrtarif | |
s ^appstat("CMD")="R" | |
s %to=0 | |
mainloop | |
i %SHARE'=$$SHARE^AppSyst() s %SHARE=$$SHARE^AppSyst() g LoadTarif | |
s ^appstat("STATUS")="GET" | |
s %free=$$gres^iapbckgsub() | |
s ^appstat("STATUS")="SEL" | |
i %free="HALT" g thlt | |
i %free="TIME" g inerror | |
i $$instat^iapbckgsub($p(%free," ",1))="B" s %to=0 g talkbeg | |
i $$instat^iapbckgsub($p(%free," ",1))="E" s %to=0 g talkend | |
i $$instat^iapbckgsub($p(%free," ",1))="L" g life | |
d addjrn^iapbckgsub("APPRK","Unknown command",%free) | |
g mainloop | |
life | |
s %to=%to+1 | |
s ^appstat("STATUS")="L" | |
s %i=1 | |
lf1 | |
s %cmd=$p(%free," ",%i+1) | |
i %cmd="" g lf3 | |
s %cod=$e(%cmd,3,4)+0 | |
i $d(%cabspis(%i))=0 d addjrn^iapbckgsub("APPRK","Unknown Life",%free) g mainloop | |
s %cc=%cabspis(%i) | |
s ^appcab(%cc).15=%cod ; номер автомата | |
i ^appcab(%cc).2=1 g lfa | |
; Ручная кабина | |
i $e(%cmd,1,1)="B" s ^appcab(%cc).1=1 s %to=0 g lf2 | |
i ($e(%cmd,1,1))="F" w "B"_%cc_"*" d addjrn^iapbckgsub("C"_%cc,"ON") | |
; РУЧНЫЕ КАБИНЫ ВСЕГДА ВКЛЮЧЕНЫ | |
i ($e(%cmd,1,1)="F")&(^appcab(%cc).1=0) s ^appcab(%cc).1=0 g lf2 | |
i ($e(%cmd,1,1)="F")&(^appcab(%cc).1=1) s ^appcab(%cc).1=2 g lf2 | |
d addjrn^iapbckgsub("APPRK","US Cab"_%cc,%cmd) g lf2 | |
lfa |
; Автоматическая кабина |
i (^appcab(%cc).1'=0)!($e(%cmd,1,1)'="F") s %to=0 | |
i (^appcab(%cc).1=0)&($e(%cmd,1,1)="B") s ^appcab(%cc).1=1 g lf2 | |
i (^appcab(%cc).1=0)&($e(%cmd,1,1)="F") s ^appcab(%cc).1=0 g lf2 | |
i (^appcab(%cc).1=1)&($e(%cmd,1,1)="B") s ^appcab(%cc).1=1 g lf2 | |
i (^appcab(%cc).1=1)&($e(%cmd,1,1)="F") s ^appcab(%cc).1=2 g lf2 | |
i (^appcab(%cc).1=2)&($e(%cmd,1,1)="B") s ^appcab(%cc).1=1 g lf2 | |
i (^appcab(%cc).1=2)&($e(%cmd,1,1)="F") s ^appcab(%cc).1=2 g lf2 | |
i (^appcab(%cc).1=3)&($e(%cmd,1,1)="B") s ^appcab(%cc).1=3 g lf2 | |
i (^appcab(%cc).1=3)&($e(%cmd,1,1)="F") s ^appcab(%cc).1=0 g lf2 | |
i (^appcab(%cc).1=4)&($e(%cmd,1,1)="B") s ^appcab(%cc).1=1 g lf2 | |
i (^appcab(%cc).1=4)&($e(%cmd,1,1)="F") s ^appcab(%cc).1=4 g lf2 | |
i (^appcab(%cc).1=-1)&($e(%cmd,1,1)="B") s ^appcab(%cc).1=1 g lf2 | |
i (^appcab(%cc).1=-1)&($e(%cmd,1,1)="F") s ^appcab(%cc).1=0 g lf2 | |
d addjrn^iapbckgsub("APPRK","USS Cab"_%cc,$p(^appcab(%cc),$zp,1)_%cmd) | |
lf2 | |
s %i=%i+1 | |
g lf1 | |
lf3 | |
i %to>50 g timeout | |
g mainloop | |
talkbeg | |
s ^appstat("STATUS")="TB" | |
s %cc=$j($p(%free," ",2),1,0) | |
i (%cc>32)!(%cc<1) d addjrn^iapbckgsub("C99","Шо це таке ?",%free) g mainloop | |
s %i=$j($p(%free," ",5),1,0) | |
s ^appcab(%cc).6=$p(%free," ",4) | |
i $p(^appcab(%cc),$c(30),2)=2 g tbegrk | |
s %tsec=$p(%free," ",6) | |
s ^appcab(%cc).5=$e(%tsec,4,$l(%tsec)) s ^appcab(%cc).7=$e(%tsec,1,3) | |
tbegrk | |
s ^appcab(%cc).1=1 | |
s %tsec=$p($h,",",2) ;---системное время в секундах | |
s ^appcab(%cc).14=%tsec ; фиксируем время начала разговора | |
d addjrn^iapbckgsub("C"_%cc,%free) | |
g mainloop | |
talkend | |
s ^appstat("STATUS")="TE" | |
s %cc=$j($p(%free," ",2),1,0) | |
i (%cc>32)!(%cc<1) d addjrn^iapbckgsub("C99","Шо це таке ?",%free) g mainloop | |
s ^appcab(%cc).14=-1 | |
i $p(^appcab(%cc),$c(30),2)=1 g acabin | |
s ^appcab(%cc).4=$p(%free," ",3) | |
s ^appcab(%cc).1=2 | |
g mainloop | |
acabin | |
s %zone=$j($p(%free," ",6),1,0) | |
s %summ=$zzoo($p(%free," ",4)) | |
s ^appcab(%cc).4=$p(^appcab(%cc),$zp,4)-%summ | |
s ^appcab(%cc).8=^appcab(%cc).8+1 | |
s ^appcab(%cc).9=^appcab(%cc).9+1 | |
s ^appcab(%cc).10=^appcab(%cc).10+%summ | |
s ^appcab(%cc).11=%summ | |
s ^appcab(%cc).12=^appcab(%cc).12+%summ | |
s ^appcab(%cc).13=$p(%free," ",3) | |
i ($p(%free," ",5)+0)=0 s ^appcab(%cc).1=0 | |
d AFTERTE | |
s ^appcab(%cc).14=-1 | |
d addjrn^iapbckgsub("C"_%cc,%free) | |
g mainloop | |
; ------------------------------------ | |
inerror | |
d addjrn^iapbckgsub("APPRK","Авария АПП-РК.") | |
s %i=1 | |
ie1 | |
i $d(%cabspis(%i))=0 g ie2 | |
s %cc=%cabspis(%i) | |
i ^appcab(%cc).1=-1 g ie3 | |
i ^appcab(%cc).1=0 g ie3 | |
i ^appcab(%cc).1=2 g ie3 | |
i ^appcab(%cc).14=-1 s ^appcab(%cc).1=2 g ie3 | |
s %tsec=$p($h,",",2)-$p(^appcab(%cc),$zp,14) | |
s %tmin=%tsec\60 s %sec=$tr($j(%tsec#60,2)," ",0) | |
s %min=$e(%tmin#60+100,2,3) | |
s %tmin=%min+1 | |
i $p(^appcab(%cc),$c(30),2)=1 g ieac | |
s ^appcab(%cc).4=$j(%min,2)_"."_$j(%sec,2) | |
s ^appcab(%cc).1=0 | |
s ^appcab(%cc).14=-1 | |
d htalkend^iapbckgsub(%cc) | |
s %i=%i+1 | |
g ie1 | |
ieac | |
s %zone=3 | |
s %summ=$p(^appcab(%cc),$zp,4) | |
i (%tmin*$p(^appcab(%cc),$zp,6))>$p(^appcab(%cc),$zp,4) g aie1 | |
s %summ=$zzoo($p(^appcab(%cc),$zp,6)*%tmin) | |
aie1 | |
s ^appcab(%cc).4=$p(^appcab(%cc),$zp,4)-%summ | |
s ^appcab(%cc).8=^appcab(%cc).8+1 | |
s ^appcab(%cc).9=^appcab(%cc).9+1 | |
s ^appcab(%cc).10=^appcab(%cc).10+%summ | |
s ^appcab(%cc).11=%summ | |
s ^appcab(%cc).12=^appcab(%cc).12+%summ | |
s ^appcab(%cc).13=$j(%min,2)_"."_$j(%sec,2) | |
s ^appcab(%cc).1=2 | |
i ^appcab(%cc).4=0 s ^appcab(%cc).1=0 | |
d addjrn^iapbckgsub("C"_%cc,"AAA "_%cc_" "_$p(^appcab(%cc),$zp,13)_" "_%summ_" "_$p(^appcab(%cc),$zp,4)_" UNKNOWN") | |
d AFTERTE | |
s ^appcab(%cc).14=-1 | |
ie3 | |
s %i=%i+1 | |
g ie1 | |
ie2 | |
s ^appstat("STATUS")="A" | |
g thlt1 | |
; ------------------------------------ | |
timeout | |
d addjrn^iapbckgsub("APPRK","Монитор остановлен.","Timeout") | |
s ^appstat("STATUS")="H" | |
; ------------------------------------ | |
thlt | |
d addjrn^iapbckgsub("APPRK","Монитор остановлен.","") | |
s ^appstat("STATUS")="H" | |
thlt1 | |
c %an | |
k %cc,%free,%zone,%cmd,%i,%summ,%tsec,%tmin,%min,%hour,%sec,%cod,%idev | |
q | |
; ---------------------------------- КОНЕЦ | |
AFTERTE | |
s %tsec=$p(^appcab(%cc),$c(30),14) | |
s %tmin=%tsec\60 ;---системное время в минутах | |
s %sec=$tr($j(%tsec#60,2)," ",0) ;---кол-во секунд | |
s %min=$e(%tmin#60+100,2,3) ;---кол-во минут | |
s %hour=%tmin\60+23#24+1 ;---кол-во часов | |
s %hour=$tr($j(%hour,2)," ",0) | |
; заполнение журнала ==================================== | |
i %zone=0 s ^appcab(%cc).5=$p(^appcab(%cc),$zp,7)_$p(^appcab(%cc),$zp,5) s ^appcab(%cc).7="ГОР" | |
i %zone>127 s ^appcab(%cc).7=$e($p(^appcab(%cc),$zp,7),3,3)_$e($p(^appcab(%cc),$zp,5),1,2) s ^appcab(%cc).5=$e($p(^appcab(%cc),$zp,5),3,11) | |
; заполнение квитанций ================================== | |
s ^appticket(%cc,$o(^appticket(%cc,""),-1)+1)=$zd_$zp_%hour_":"_%min_$zp_"0"_$zp_"КОД"_$zp_"ГОРОД"_$zp_"ТЕЛЕФОН"_$zp_"0000.00" | |
s ^appticket(%cc,$o(^appticket(%cc,""),-1)).3=^appcab(%cc).13 | |
s ^appticket(%cc,$o(^appticket(%cc,""),-1)).4=^appcab(%cc).7 | |
s %cmd="" | |
s %cod=$p(^appcab(%cc),$c(30),7) | |
i %zone>127 g COUNTRY | |
s %i=$e($p(^appcab(%cc),$c(30),5),1,3) | |
i $e(%cod,1,1)="2" s %i=$e(%cod,2,3) s %cod=^AppSys58("KOD_OBLS") | |
i $d(^app8DCAC(%cod))>0 s %cmd=$p(^app8DCAC(%cod),$c(30),2) | |
s ^appticket(%cc,$o(^appticket(%cc,""),-1)).8=$e(%cmd,1,14) | |
i $d(^app8DCAC(%cod,$e(%i,1,2)))>0 d | |
. s %cmd=^app8DCAC(%cod,$e(%i,1,2)) | |
s ^appticket(%cc,$o(^appticket(%cc,""),-1)).5=$e(%cmd,1,12) | |
g cntick | |
COUNTRY | |
s %i=%cod_$p(^appcab(%cc),$c(30),5) | |
s %cmd="" | |
cntry1 | |
i %i="" g cntry2 | |
i $g(^appDCAC(%i))="" s %i=$e(%i,1,$l(%i)-1) g cntry1 | |
s %cmd=$g(^appDCAC(%i)) | |
cntry2 | |
s ^appticket(%cc,$o(^appticket(%cc,""),-1)).5=$e($p(%cmd,$c(30),2),1,12) | |
s ^appticket(%cc,$o(^appticket(%cc,""),-1)).8=$e($p(%cmd,$c(30),1),1,14) | |
cntick | |
s ^appticket(%cc,$o(^appticket(%cc,""),-1)).6=^appcab(%cc).5 | |
s ^appticket(%cc,$o(^appticket(%cc,""),-1)).7=^appcab(%cc).11 | |
; заполнение реестра ======================================= | |
s %gs=^appstat(1,"NOM_GOES") s %ms=^appstat(1,"NOM_MESS") s %dn=^appstat(1,"NOM_DENN") | |
d inreestr^iapbckgsub(%summ,%zone) | |
s %noper=^appstat(1,"NOM_OPER") | |
s %nsmen=^appstat(1,"NOM_SMEN") | |
i $d(^ReestrApp(%gs,%ms,%dn,%noper,%nsmen,"ACAB",%cc))=0 s ^ReestrApp(%gs,%ms,%dn,%noper,%nsmen,"ACAB",%cc).1=%summ_$zp_1 g after1 | |
s ^ReestrApp(%gs,%ms,%dn,%noper,%nsmen,"ACAB",%cc).1=$p(^ReestrApp(%gs,%ms,%dn,%noper,%nsmen,"ACAB",%cc),$zp,1)+%summ | |
s ^ReestrApp(%gs,%ms,%dn,%noper,%nsmen,"ACAB",%cc).2=$p(^ReestrApp(%gs,%ms,%dn,%noper,%nsmen,"ACAB",%cc),$zp,2)+1 | |
after1 | |
i $d(^ReestrApp(%gs,%ms,%dn,%noper,%nsmen,"AZONE",%zone))=0 s ^ReestrApp(%gs,%ms,%dn,%noper,%nsmen,"AZONE",%zone).1=%summ_$zp_1 g after2 | |
s ^ReestrApp(%gs,%ms,%dn,%noper,%nsmen,"AZONE",%zone).1=$p(^ReestrApp(%gs,%ms,%dn,%noper,%nsmen,"AZONE",%zone),$zp,1)+%summ | |
s ^ReestrApp(%gs,%ms,%dn,%noper,%nsmen,"AZONE",%zone).2=$p(^ReestrApp(%gs,%ms,%dn,%noper,%nsmen,"AZONE",%zone),$zp,2)+1 | |
after2 | |
q | |
; IAKoff Save, %n, 05/06/96 | |
iapbckgsub | |
iapbckgsub |
;IAKoff;09:47 PM 28 Feb 1996 |
q | |
instat(%s) | |
n %res | |
i $l(%s)>3 s %res="?" g ins1 | |
i ($l(%s)<2) g ins2 | |
i ($e(%s,1,1)=$e(%s,2,2)) s %res=$e(%s,2,2) g ins1 | |
i ($l(%s)<3) g ins2 | |
i ($e(%s,1,1)=$e(%s,3,3)) s %res=$e(%s,1,1) g ins1 | |
i ($e(%s,2,2)=$e(%s,3,3)) s %res=$e(%s,2,2) g ins1 | |
ins2 | |
i "EBSL"[$e(%s,1,1) s %res=$e(%s,1,1) g ins1 | |
i ($l(%s)<2) s %res="?" g ins1 | |
i "EBSL"[$e(%s,2,2) s %res=$e(%s,2,2) g ins1 | |
i "EBSL"[$e(%s,3,3) s %res=$e(%s,3,3) g ins1 | |
s %res="?" | |
ins1 | |
q %res | |
; ------------------------------------ | |
gres() |
; получить строку от АПП |
i $$CHECK^dp58ups()="S" q "TIME" | |
n %res,%cc,%cnt | |
s %res="" s %cnt=0 | |
nxtchr | |
r *%cc:1 i %cc'=-1 g getchr | |
i (^appstat("CMD")'="R")&(^appstat("CMD")'="WAIT") g ghlt | |
s %cnt=%cnt+1 | |
i %cnt=10 w "V*" | |
i %cnt<20 g nxtchr | |
s %res="TIME" g gend | |
getchr | |
i $c(%cc)'="*" s %res=%res_$c(%cc) g nxtchr | |
g gend | |
ghlt | |
i ^appstat("CMD")="H" s %res="HALT" g gend | |
i $e(^appstat("CMD"),1,3)'="WRQ" g mbewac | |
s ^appstat("CMD")="WEN"_$e(^appstat("CMD"),4,4) g nxtchr | |
mbewac | |
i $e(^appstat("CMD"),1,3)'="WAC" g oprcmderr | |
w ^appstat("CMD","COM")_"*" | |
s %to=0 | |
d addjrn("OPER","Приход",^appstat("CMD","COM")) | |
s %cc=$e(^appstat("CMD","COM"),2,3)+0 | |
i $e(^appstat("CMD","COM"),1,1)="B" d | |
. d addjrn("C"_%cc,"ON "_$p(^appstat("CMD","COM")," ",2)) | |
. i ^appcab(%cc).2=1 d | |
. . s ^appcab(%cc).3=$p(^appstat("CMD","COM")," ",2) | |
. . s ^appcab(%cc).4=$p(^appstat("CMD","COM")," ",2) | |
. . s ^appcab(%cc).6=0 | |
. . s ^appcab(%cc).7="" | |
. . s ^appcab(%cc).8=0 | |
. . s ^appcab(%cc).10=0 | |
. . s ^appcab(%cc).11=0 | |
. . s ^appcab(%cc).13=0 | |
. . s ^appcab(%cc).1=1 | |
. i ^appcab(%cc).2=2 d | |
. . s ^appcab(%cc).1=1 | |
. . s ^appcab(%cc).3=$p(^appstat("CMD","COM")," ",2) | |
. . s ^appcab(%cc).4="" | |
. . s ^appcab(%cc).6=0 | |
. . s ^appcab(%cc).7="" | |
. . s ^appcab(%cc).8=0 | |
. . s ^appcab(%cc).10=0 | |
. . s ^appcab(%cc).11=0 | |
. . s ^appcab(%cc).13=0 | |
i $e(^appstat("CMD","COM"),1,1)="O" d | |
. d addjrn("C"_%cc,"OFF "_$p(^appcab(%cc),$zp,4)) | |
. s ^appcab(%cc).14=-1 | |
. i ^appcab(%cc).2=1 d | |
. . s ^appcab(%cc).1=3 | |
. . s ^appzxcab(%cc)=^appcab(%cc) | |
. i ^appcab(%cc).2=2 d | |
. . i ^appcab(%cc).1=1 s ^appcab(%cc).4=0 d ^iaphcabbckg(%cc) | |
. . s ^appcab(%cc).1=0 | |
. . s ^appcab(%cc).5="СВОБ" | |
s ^appstat("CMD")="R" | |
w "V*" ; жизненный тик-так | |
g nxtchr | |
oprcmderr | |
d addjrn("OPER","Unknown command",^appstat("CMD")) | |
g nxtchr | |
gend | |
q %res | |
; ----------------------------------- | |
dec2hex(%dec) |
; Конвертор из десятичного числа в 5 байт для АПП |
n %hex,%kop,%hh,%hl,%lh,%ll,%al | |
s %hh=%dec\16777216 | |
s %hl=(%dec-(%hh*16777216))\65536 | |
s %lh=(%dec-(%hh*16777216)-(%hl*65536))\256 | |
s %ll=(%dec-(%hh*16777216)-(%hl*65536)-(%lh*256))\1 | |
s %al=(%dec-(%dec\1)*100)\1 | |
s %hex=$c(%al,%ll,%lh,%hl,%hh) | |
q %hex | |
; ---------------------------------- | |
errhndr | |
n %ei,%iiii | |
s %ei=$zzerr | |
d addjrn("ERROR",$zename($p(%ei,",",1)),$$GetDTQ^AppSys()) | |
d init^%errlog | |
g inerror^iapbckg | |
; ---------------------------------- | |
inreestr(%increment,%z) | |
n %mess,%denn,%oper,%smen | |
s %mess=^appstat(1,"NOM_MESS") | |
s %denn=^appstat(1,"NOM_DENN") | |
s %oper=^appstat(1,"NOM_OPER") | |
s %smen=^appstat(1,"NOM_SMEN") | |
; ОБЩИЙ | |
l +^AppSmena | |
s ^AppSmena(%mess,%denn,%oper,%smen).6=$p(^AppSmena(%mess,%denn,%oper,%smen),$zp,6)+%increment | |
; ЧИСТО ВСЕ ПО АК | |
i %z=0 s ^AppSmena(%mess,%denn,%oper,%smen).30=$p(^AppSmena(%mess,%denn,%oper,%smen),$zp,30)+%increment g inree1 | |
i %z<128 s ^AppSmena(%mess,%denn,%oper,%smen).22=$p(^AppSmena(%mess,%denn,%oper,%smen),$zp,22)+%increment g inree1 | |
s ^AppSmena(%mess,%denn,%oper,%smen).29=$p(^AppSmena(%mess,%denn,%oper,%smen),$zp,29)+%increment | |
inree1 | |
l -^AppSmena | |
q | |
; ------------------------------------ | |
addjrn(%ind,%txt,%res) | |
n %id | |
s %id=$o(^appjrn(%ind,""),-1)+1 | |
s ^appjrn(%ind,%id,"MSG")=$g(%txt) | |
s ^appjrn(%ind,%id,"RES")=$g(%res) | |
s ^appjrn(%ind,%id,"TIME")=$$GetDTQ^AppSys | |
k ^appjrn(%ind,%id-200) | |
q | |
; ---------------------------------- |